package com.ym.medical.dao;

import com.ym.medical.domain.entity.ConsultSummaryEntity;
import com.ym.medical.domain.param.ExamDoctorParam;
import com.ym.medical.domain.param.PatientInfoParam;
import com.ym.medical.domain.vo.CounsellingRoomRecordVO;
import com.ym.medical.domain.vo.DoctorServiceItemVO;
import com.ym.medical.domain.vo.DoctorTdDetailsVO;
import com.ym.medical.domain.vo.PatientInfoVo;
import com.ym.medical.domain.vo.ResultDocDetailVo;
import com.ym.medical.domain.vo.ResultDoctor;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface ResultDoctorDao {

    int update(@Param("pojo") ResultDoctor pojo);

    List<ResultDoctor> selectByExamDoctor(ExamDoctorParam examDoctor);

    ResultDocDetailVo selectByUid(ExamDoctorParam examDoctor);

    List<DoctorServiceItemVO> selectByExamDoctorServiceItemVO(ExamDoctorParam examDoctor);

    List<PatientInfoVo>  selectPatient(@Param("userId") Long userId, @Param("doctorId") Long doctorId, @Param("possDisease") String possDisease);

    List<ConsultSummaryEntity> selectConsultSummary(@Param("doctorId") Long doctorId);

    List<CounsellingRoomRecordVO> selectRecord(@Param("patientInfo") PatientInfoParam patientInfo, @Param("possDisease") String possDisease);

    List<DoctorTdDetailsVO> docTransactionDetail(@Param("userId")Long userId, @Param("tdTime") String tdTime);
}
